# 1直接创建
list01 = [1,2,3,4, 5, 6]

# 2append自动到最后,insert指定位置
list03 = []
list03.append(1)
list03.append(2)
list03.insert(1,0)

liste1 = [10,20,30,40,50,60,70,80,90,100]
liste2 = "my name is tomy"

import random
list1 = [10,20,30,40,50,60,70,80,90,100]
random.shuffle(list1)  # 打乱集合，洗牌
#生成10个50 <= X <= 100的数字
def get_random_numbers(star,end, number):
    numbers = []
    for i in range(number):
        numbers.append(random.randint(star, end))
    return numbers

#班级有50个同学，每个同学有5门课，随机生成50个同学的成绩
def get_class_totl(totle:int):
    restults = []
    for index in range(totle):
        restults.append(get_random_numbers(50,100,5))
    return restults

#集合遍历
def traversal():
    list01 = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
    # 方法01: 使用for -- in --- 遍历：读取每个元素的值
    for value in list01:
        print(value)
    # 方法02：使用for -- in range() --- 遍历：通过元素的索引访问到元素
    #修改删除必须通过索引号
    for index in range(len(list01)):
        print(list01[index])
    # 方法03：使用for key,val in enumerate(): --- 遍历：通过值和索引遍历
    for key, value in enumerate(list01):
        print(key, end='\t')
        print(value)
    for index, value in enumerate(list01):
        # if value % 3 == 0:
        list01[index] = 666
        print(value)
def often():
    # + 合并运算符
    list01 = [11,22]
    list02 = [33,44]
    print(list01 + list02) # 输出结果:[11,22,33,44]
    # * ：让集合重复多少次
    print(list01 * 3) # 输出结果：[11,22,11,22,11,22]
    # len: 返回list元素的个数
    print(len(list01)) # 输出结果：2
    # in： 判断是否存在某一个元素
    print('88' in list01) # 输出结果：False
    # 使用append, insert, extend 添加元素
    # 使用remove , pop, del, clear删除
    list01 =[11,22,33,44,55,66,77,88,99,100]
    print(max(list01)) # 最大值
    print(min(list01)) # 最小值
    print(sum(list01)) # 求和
    # 排序：sort()和sorted()
    # 反序：reverse()
    # 查找：index()
    # count()

if __name__ == '__main__':
    # often()
    # get_class_totl2 = get_class_totl(50)
    # for value in get_class_totl2:
    #     print(value)
    # print(traversal())
    # print(get_random_numbers(50,100,20))
    # print(list1)
    # # 用索引取数,从前往后
    # print(list03[1])
    # #用索引取数,从后往前
    # print(list01[-1])
    # # ---------------------切片器访问元素,格式：list[开始索引:结束索引:步长]----------------------------
    # # 如果开始索引从0开始, 开始索引可以省略；如果结束索引到最后，结束索引可以省略；如果步长等于
    # # 1，步长可以省略liste1 = [10,20,30,40,50,60,70,80,90,100]
    # print(liste1[0])
    # print(liste1[-1])
    print(liste1[4:])
    print(liste1[:4])
    # print(liste1[:-5])
    # print(liste1[-5:])
    # print(liste1[1:5])
    # print(liste1[-4:-1])
    # print(liste1[1::2])
    # print(liste1[-1:-4:-1])
    # print(liste2[::-1])

